home *** CD-ROM | disk | FTP | other *** search
/ CU Amiga Super CD-ROM 14 / CU Amiga Magazine's Super CD-ROM 14 (1997)(EMAP Images)(GB)(Track 1 of 3)[!][issue 1997-09].iso / CUCD / Programming / Mesa-2.2 / src / dlist.h < prev    next >
Encoding:
C/C++ Source or Header  |  1997-03-13  |  14.6 KB  |  393 lines

  1. /* $Id: dlist.h,v 1.3 1997/02/09 18:50:18 brianp Exp $ */
  2.  
  3. /*
  4.  * Mesa 3-D graphics library
  5.  * Version:  2.2
  6.  * Copyright (C) 1995-1997  Brian Paul
  7.  *
  8.  * This library is free software; you can redistribute it and/or
  9.  * modify it under the terms of the GNU Library General Public
  10.  * License as published by the Free Software Foundation; either
  11.  * version 2 of the License, or (at your option) any later version.
  12.  *
  13.  * This library is distributed in the hope that it will be useful,
  14.  * but WITHOUT ANY WARRANTY; without even the implied warranty of
  15.  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  16.  * Library General Public License for more details.
  17.  *
  18.  * You should have received a copy of the GNU Library General Public
  19.  * License along with this library; if not, write to the Free
  20.  * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  21.  */
  22.  
  23.  
  24. /*
  25.  * $Log: dlist.h,v $
  26.  * Revision 1.3  1997/02/09 18:50:18  brianp
  27.  * added GL_EXT_texture3D support
  28.  *
  29.  * Revision 1.2  1996/11/07 04:12:45  brianp
  30.  * texture images are now gl_image structs, not gl_texture_image structs
  31.  *
  32.  * Revision 1.1  1996/09/13 01:38:16  brianp
  33.  * Initial revision
  34.  *
  35.  */
  36.  
  37.  
  38. #ifndef DLIST_H
  39. #define DLIST_H
  40.  
  41.  
  42. #include "types.h"
  43.  
  44.  
  45.  
  46. extern void gl_init_lists( void );
  47.  
  48. extern GLint gl_list_index( void );
  49.  
  50.  
  51.  
  52.  
  53. extern void gl_CallList( GLcontext *ctx, GLuint list );
  54.  
  55. extern void gl_CallLists( GLcontext *ctx,
  56.                           GLsizei n, GLenum type, const GLvoid *lists );
  57.  
  58. extern void gl_DeleteLists( GLcontext *ctx, GLuint list, GLsizei range );
  59.  
  60. extern void gl_EndList( GLcontext *ctx );
  61.  
  62. extern GLuint gl_GenLists( GLcontext *ctx, GLsizei range );
  63.  
  64. extern GLboolean gl_IsList( GLcontext *ctx, GLuint list );
  65.  
  66. extern void gl_ListBase( GLcontext *ctx, GLuint base );
  67.  
  68. extern void gl_NewList( GLcontext *ctx, GLuint list, GLenum mode );
  69.  
  70.  
  71.  
  72.  
  73. extern void gl_save_Accum( GLcontext *ctx, GLenum op, GLfloat value );
  74.  
  75. extern void gl_save_AlphaFunc( GLcontext *ctx, GLenum func, GLclampf ref );
  76.  
  77. extern void gl_save_BlendColor( GLcontext *ctx, GLfloat red, GLfloat green,
  78.                                 GLfloat blue, GLfloat alpha );
  79.  
  80. extern void gl_save_BlendEquation( GLcontext *ctx, GLenum mode );
  81.  
  82. extern void gl_save_BlendFunc( GLcontext *ctx,
  83.                                GLenum sfactor, GLenum dfactor );
  84.  
  85. extern void gl_save_Begin( GLcontext *ctx, GLenum mode );
  86.  
  87. extern void gl_save_BindTexture( GLcontext *ctx,
  88.                                  GLenum target, GLuint texture );
  89.  
  90. extern void gl_save_Bitmap( GLcontext *ctx, GLsizei width, GLsizei height,
  91.                 GLfloat xorig, GLfloat yorig,
  92.                 GLfloat xmove, GLfloat ymove,
  93.                             const struct gl_image *bitmap );
  94.  
  95. extern void gl_save_CallList( GLcontext *ctx, GLuint list );
  96.  
  97. extern void gl_save_CallLists( GLcontext *ctx,
  98.                                GLsizei n, GLenum type, const GLvoid *lists );
  99.  
  100. extern void gl_save_Clear( GLcontext *ctx, GLbitfield mask );
  101.  
  102. extern void gl_save_ClearAccum( GLcontext *ctx, GLfloat red, GLfloat green,
  103.                     GLfloat blue, GLfloat alpha );
  104.  
  105. extern void gl_save_ClearColor( GLcontext *ctx, GLclampf red, GLclampf green,
  106.                     GLclampf blue, GLclampf alpha );
  107.  
  108. extern void gl_save_ClearDepth( GLcontext *ctx, GLclampd depth );
  109.  
  110. extern void gl_save_ClearIndex( GLcontext *ctx, GLfloat c );
  111.  
  112. extern void gl_save_ClearStencil( GLcontext *ctx, GLint s );
  113.  
  114. extern void gl_save_ClipPlane( GLcontext *ctx,
  115.                                GLenum plane, const GLfloat *equ );
  116.  
  117. extern void gl_save_Color4f( GLcontext *ctx, GLfloat r, GLfloat g,
  118.                              GLfloat b, GLfloat a );
  119.  
  120. extern void gl_save_Color4ub( GLcontext *ctx, GLubyte r, GLubyte g,
  121.                               GLubyte b, GLubyte a );
  122.  
  123. extern void gl_save_ColorMask( GLcontext *ctx, GLboolean red, GLboolean green,
  124.                    GLboolean blue, GLboolean alpha );
  125.  
  126. extern void gl_save_ColorMaterial( GLcontext *ctx, GLenum face, GLenum mode );
  127.  
  128. extern void gl_save_CopyPixels( GLcontext *ctx, GLint x, GLint y,
  129.                 GLsizei width, GLsizei height, GLenum type );
  130.  
  131. extern void gl_save_CopyTexImage1D( GLcontext *ctx,
  132.                                     GLenum target, GLint level,
  133.                                     GLenum internalformat,
  134.                                     GLint x, GLint y, GLsizei width,
  135.                                     GLint border );
  136.  
  137. extern void gl_save_CopyTexImage2D( GLcontext *ctx,
  138.                                     GLenum target, GLint level,
  139.                                     GLenum internalformat,
  140.                                     GLint x, GLint y, GLsizei width,
  141.                                     GLsizei height, GLint border );
  142.  
  143. extern void gl_save_CopyTexSubImage1D( GLcontext *ctx,
  144.                                        GLenum target, GLint level,
  145.                                        GLint xoffset, GLint x, GLint y,
  146.                                        GLsizei width );
  147.  
  148. extern void gl_save_CopyTexSubImage2D( GLcontext *ctx,
  149.                                        GLenum target, GLint level,
  150.                                        GLint xoffset, GLint yoffset,
  151.                                        GLint x, GLint y,
  152.                                        GLsizei width, GLint height );
  153.  
  154. extern void gl_save_CopyTexSubImage3DEXT( GLcontext *ctx,
  155.                                           GLenum target, GLint level,
  156.                                           GLint xoffset, GLint yoffset, GLint zoffset,
  157.                                           GLint x, GLint y,
  158.                                           GLsizei width, GLint height );
  159.  
  160. extern void gl_save_CullFace( GLcontext *ctx, GLenum mode );
  161.  
  162. extern void gl_save_DepthFunc( GLcontext *ctx, GLenum func );
  163.  
  164. extern void gl_save_DepthMask( GLcontext *ctx, GLboolean mask );
  165.  
  166. extern void gl_save_DepthRange( GLcontext *ctx,
  167.                                 GLclampd nearval, GLclampd farval );
  168.  
  169. extern void gl_save_Disable( GLcontext *ctx, GLenum cap );
  170.  
  171. extern void gl_save_DrawBuffer( GLcontext *ctx, GLenum mode );
  172.  
  173. extern void gl_save_DrawPixels( GLcontext *ctx,
  174.                                 GLsizei width, GLsizei height, GLenum format,
  175.                     GLenum type, const GLvoid *pixels );
  176.  
  177. extern void gl_save_EdgeFlag( GLcontext *ctx, GLboolean flag );
  178.  
  179. extern void gl_save_Enable( GLcontext *ctx, GLenum cap );
  180.  
  181. extern void gl_save_End( GLcontext *ctx );
  182.  
  183. extern void gl_save_EvalCoord1f( GLcontext *ctx, GLfloat u );
  184.  
  185. extern void gl_save_EvalCoord2f( GLcontext *ctx, GLfloat u, GLfloat v );
  186.  
  187. extern void gl_save_EvalMesh1( GLcontext *ctx,
  188.                                GLenum mode, GLint i1, GLint i2 );
  189.  
  190. extern void gl_save_EvalMesh2( GLcontext *ctx, GLenum mode, GLint i1, GLint i2,
  191.                    GLint j1, GLint j2 );
  192.  
  193. extern void gl_save_EvalPoint1( GLcontext *ctx, GLint i );
  194.  
  195. extern void gl_save_EvalPoint2( GLcontext *ctx, GLint i, GLint j );
  196.  
  197. extern void gl_save_Fogfv( GLcontext *ctx,
  198.                            GLenum pname, const GLfloat *params );
  199.  
  200. extern void gl_save_FrontFace( GLcontext *ctx, GLenum mode );
  201.  
  202. extern void gl_save_Frustum( GLcontext *ctx, GLdouble left, GLdouble right,
  203.                              GLdouble bottom, GLdouble top,
  204.                              GLdouble nearval, GLdouble farval );
  205.  
  206. extern void gl_save_Hint( GLcontext *ctx, GLenum target, GLenum mode );
  207.  
  208. extern void gl_save_Indexf( GLcontext *ctx, GLfloat index );
  209.  
  210. extern void gl_save_Indexi( GLcontext *ctx, GLint index );
  211.  
  212. extern void gl_save_IndexMask( GLcontext *ctx, GLuint mask );
  213.  
  214. extern void gl_save_InitNames( GLcontext *ctx );
  215.  
  216. extern void gl_save_Lightfv( GLcontext *ctx, GLenum light, GLenum pname,
  217.                              const GLfloat *params, GLint numparams );
  218.  
  219. extern void gl_save_LightModelfv( GLcontext *ctx, GLenum pname,
  220.                                 const GLfloat *params );
  221.  
  222. extern void gl_save_LineWidth( GLcontext *ctx, GLfloat width );
  223.  
  224. extern void gl_save_LineStipple( GLcontext *ctx, GLint factor,
  225.                                  GLushort pattern );
  226.  
  227. extern void gl_save_ListBase( GLcontext *ctx, GLuint base );
  228.  
  229. extern void gl_save_LoadMatrixf( GLcontext *ctx, const GLfloat *m );
  230.  
  231. extern void gl_save_LoadName( GLcontext *ctx, GLuint name );
  232.  
  233. extern void gl_save_LogicOp( GLcontext *ctx, GLenum opcode );
  234.  
  235. extern void gl_save_Map1f( GLcontext *ctx, GLenum target,
  236.                            GLfloat u1, GLfloat u2, GLint stride,
  237.                GLint order, const GLfloat *points,
  238.                            GLboolean retain );
  239.  
  240. extern void gl_save_Map2f( GLcontext *ctx, GLenum target,
  241.                GLfloat u1, GLfloat u2, GLint ustride, GLint uorder,
  242.                GLfloat v1, GLfloat v2, GLint vstride, GLint vorder,
  243.                const GLfloat *points,
  244.                            GLboolean retain );
  245.  
  246. extern void gl_save_MapGrid1f( GLcontext *ctx, GLint un,
  247.                                GLfloat u1, GLfloat u2 );
  248.  
  249. extern void gl_save_MapGrid2f( GLcontext *ctx,
  250.                                GLint un, GLfloat u1, GLfloat u2,
  251.                                GLint vn, GLfloat v1, GLfloat v2 );
  252.  
  253. extern void gl_save_Materialfv( GLcontext *ctx, GLenum face, GLenum pname,
  254.                                 const GLfloat *params );
  255.  
  256. extern void gl_save_MatrixMode( GLcontext *ctx, GLenum mode );
  257.  
  258. extern void gl_save_MultMatrixf( GLcontext *ctx, const GLfloat *m );
  259.  
  260. extern void gl_save_NewList( GLcontext *ctx, GLuint list, GLenum mode );
  261.  
  262. extern void gl_save_Normal3fv( GLcontext *ctx, const GLfloat n[3] );
  263.  
  264. extern void gl_save_Normal3f( GLcontext *ctx,
  265.                               GLfloat nx, GLfloat ny, GLfloat nz );
  266.  
  267. extern void gl_save_PassThrough( GLcontext *ctx, GLfloat token );
  268.  
  269. extern void gl_save_PixelMapfv( GLcontext *ctx, GLenum map, GLint mapsize,
  270.                                 const GLfloat *values );
  271.  
  272. extern void gl_save_PixelTransferf( GLcontext *ctx,
  273.                                     GLenum pname, GLfloat param );
  274.  
  275. extern void gl_save_PixelZoom( GLcontext *ctx,
  276.                                GLfloat xfactor, GLfloat yfactor );
  277.  
  278. extern void gl_save_PointSize( GLcontext *ctx, GLfloat size );
  279.  
  280. extern void gl_save_PolygonMode( GLcontext *ctx, GLenum face, GLenum mode );
  281.  
  282. extern void gl_save_PolygonStipple( GLcontext *ctx, const GLubyte *mask );
  283.  
  284. extern void gl_save_PolygonOffset( GLcontext *ctx,
  285.                                    GLfloat factor, GLfloat units );
  286.  
  287. extern void gl_save_PopAttrib( GLcontext *ctx );
  288.  
  289. extern void gl_save_PopMatrix( GLcontext *ctx );
  290.  
  291. extern void gl_save_PopName( GLcontext *ctx );
  292.  
  293. extern void gl_save_PrioritizeTextures( GLcontext *ctx,
  294.                                         GLsizei n, const GLuint *textures,
  295.                                         const GLclampf *priorities );
  296.  
  297. extern void gl_save_PushAttrib( GLcontext *ctx, GLbitfield mask );
  298.  
  299. extern void gl_save_PushMatrix( GLcontext *ctx );
  300.  
  301. extern void gl_save_PushName( GLcontext *ctx, GLuint name );
  302.  
  303. extern void gl_save_RasterPos4f( GLcontext *ctx,
  304.                                  GLfloat x, GLfloat y, GLfloat z, GLfloat w );
  305.  
  306. extern void gl_save_ReadBuffer( GLcontext *ctx, GLenum mode );
  307.  
  308. extern void gl_save_Rotatef( GLcontext *ctx, GLfloat angle,
  309.                              GLfloat x, GLfloat y, GLfloat z );
  310.  
  311. extern void gl_save_Scalef( GLcontext *ctx, GLfloat x, GLfloat y, GLfloat z );
  312.  
  313. extern void gl_save_Scissor( GLcontext *ctx,
  314.                              GLint x, GLint y, GLsizei width, GLsizei height );
  315.  
  316. extern void gl_save_ShadeModel( GLcontext *ctx, GLenum mode );
  317.  
  318. extern void gl_save_StencilFunc( GLcontext *ctx,
  319.                                  GLenum func, GLint ref, GLuint mask );
  320.  
  321. extern void gl_save_StencilMask( GLcontext *ctx, GLuint mask );
  322.  
  323. extern void gl_save_StencilOp( GLcontext *ctx,
  324.                                GLenum fail, GLenum zfail, GLenum zpass );
  325.  
  326. extern void gl_save_TexCoord4f( GLcontext *ctx, GLfloat s, GLfloat t,
  327.                                 GLfloat r, GLfloat q );
  328.  
  329. extern void gl_save_TexEnvfv( GLcontext *ctx, GLenum target, GLenum pname,
  330.                               const GLfloat *params );
  331.  
  332. extern void gl_save_TexParameterfv( GLcontext *ctx, GLenum target,
  333.                                     GLenum pname, const GLfloat *params );
  334.  
  335. extern void gl_save_TexGenfv( GLcontext *ctx, GLenum coord, GLenum pname,
  336.                               const GLfloat *params );
  337.  
  338. extern void gl_save_TexImage1D( GLcontext *ctx, GLenum target,
  339.                                 GLint level, GLint components,
  340.                     GLsizei width, GLint border,
  341.                                 GLenum format, GLenum type,
  342.                                 struct gl_image *teximage );
  343.  
  344. extern void gl_save_TexImage2D( GLcontext *ctx, GLenum target,
  345.                                 GLint level, GLint components,
  346.                     GLsizei width, GLsizei height, GLint border,
  347.                                 GLenum format, GLenum type,
  348.                                 struct gl_image *teximage );
  349.  
  350. extern void gl_save_TexImage3DEXT( GLcontext *ctx, GLenum target,
  351.                                    GLint level, GLint components,
  352.                                    GLsizei width, GLsizei height, GLsizei depth,
  353.                                    GLint border,
  354.                                    GLenum format, GLenum type,
  355.                                    struct gl_image *teximage );
  356.  
  357. extern void gl_save_TexSubImage1D( GLcontext *ctx,
  358.                                    GLenum target, GLint level,
  359.                                    GLint xoffset, GLsizei width,
  360.                                    GLenum format, GLenum type,
  361.                                    struct gl_image *image );
  362.  
  363.  
  364. extern void gl_save_TexSubImage2D( GLcontext *ctx,
  365.                                    GLenum target, GLint level,
  366.                                    GLint xoffset, GLint yoffset,
  367.                                    GLsizei width, GLsizei height,
  368.                                    GLenum format, GLenum type,
  369.                                    struct gl_image *image );
  370.  
  371. extern void gl_save_TexSubImage3DEXT( GLcontext *ctx,
  372.                                       GLenum target, GLint level,
  373.                                       GLint xoffset, GLint yoffset, GLint zoffset,
  374.                                       GLsizei width, GLsizei height, GLsizei depth,
  375.                                       GLenum format, GLenum type,
  376.                                       struct gl_image *image );
  377.  
  378. extern void gl_save_Translatef( GLcontext *ctx,
  379.                                 GLfloat x, GLfloat y, GLfloat z );
  380.  
  381. extern void gl_save_Vertex4f( GLcontext *ctx,
  382.                               GLfloat x, GLfloat y, GLfloat z, GLfloat w );
  383.  
  384. extern void gl_save_Viewport( GLcontext *ctx, GLint x, GLint y,
  385.                               GLsizei width, GLsizei height );
  386.  
  387. extern void gl_save_WindowPos4fMESA( GLcontext *ctx,
  388.                                      GLfloat x, GLfloat y,
  389.                                      GLfloat z, GLfloat w );
  390.  
  391.  
  392. #endif
  393.